#ifndef MAPLOADER_TILESET_HPP
#define MAPLOADER_TILESET_HPP

// std Header
#include <vector>
#include <sstream>

// pugi Header
#include "pugi.hpp"

// Eigene Header
#include "Property.hpp"

namespace maploader
{
	class Tileset
	{
	public:
		Tileset();

	protected:
		unsigned int myFirstgid;
		std::string mySource, myName;
		unsigned int myWidth, myHeight;
		unsigned int myTileWidth, myTileHeight;
		unsigned int mySpacing, myMargin;
		std::string myImageFile;
		unsigned int myTransparentColor;
		int myID;
		std::vector<Property> myProperties;

	public:
		static Tileset Load(const pugi::xml_node& node);
		unsigned int GetFirstGID();
		std::string GetSource();
	};
}

#endif //MAPLOADER_TILESET_HPP